[INFO] fetching crate hydroflow 0.5.0...
[INFO] checking hydroflow-0.5.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate hydroflow 0.5.0 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate hydroflow 0.5.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate hydroflow 0.5.0
[INFO] removed 2 missing examples
[INFO] finished tweaking crates.io crate hydroflow 0.5.0
[INFO] tweaked toml for crates.io crate hydroflow 0.5.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate crates.io crate hydroflow 0.5.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded textnonce v1.0.0
[INFO] [stderr]   Downloaded hydroflow_datalog v0.5.0
[INFO] [stderr]   Downloaded pusherator v0.0.3
[INFO] [stderr]   Downloaded tree-sitter-config v0.19.0
[INFO] [stderr]   Downloaded variadics v0.0.2
[INFO] [stderr]   Downloaded rust-sitter v0.3.3
[INFO] [stderr]   Downloaded c2rust-bitfields-derive v0.2.1
[INFO] [stderr]   Downloaded multiplatform_test v0.0.0
[INFO] [stderr]   Downloaded utf8-width v0.1.6
[INFO] [stderr]   Downloaded c2rust-bitfields v0.3.0
[INFO] [stderr]   Downloaded rust-sitter-common v0.3.3
[INFO] [stderr]   Downloaded smallbitvec v2.5.1
[INFO] [stderr]   Downloaded tree-sitter-loader v0.20.0
[INFO] [stderr]   Downloaded rust-sitter-tool v0.3.3
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.3.34
[INFO] [stderr]   Downloaded tree-sitter-tags v0.20.2
[INFO] [stderr]   Downloaded ctor v0.2.2
[INFO] [stderr]   Downloaded ref-cast v1.0.16
[INFO] [stderr]   Downloaded core_affinity v0.5.10
[INFO] [stderr]   Downloaded prettyplease v0.2.4
[INFO] [stderr]   Downloaded hydroflow_cli_integration v0.3.0
[INFO] [stderr]   Downloaded hydroflow_datalog_core v0.5.0
[INFO] [stderr]   Downloaded hdrhistogram v7.5.2
[INFO] [stderr]   Downloaded insta v1.29.0
[INFO] [stderr]   Downloaded syn v2.0.14
[INFO] [stderr]   Downloaded tree-sitter v0.20.10
[INFO] [stderr]   Downloaded tree-sitter-c2rust v0.20.10
[INFO] [stderr]   Downloaded auto_impl v1.0.1
[INFO] [stderr]   Downloaded lattices v0.5.0
[INFO] [stderr]   Downloaded basic-toml v0.1.2
[INFO] [stderr]   Downloaded similar v2.2.1
[INFO] [stderr]   Downloaded rust-sitter-macro v0.3.3
[INFO] [stderr]   Downloaded ref-cast-impl v1.0.16
[INFO] [stderr]   Downloaded trybuild v1.0.80
[INFO] [stderr]   Downloaded cc-traits v2.0.0
[INFO] [stderr]   Downloaded tree-sitter-cli v0.20.8
[INFO] [stderr]   Downloaded syn-inline-mod v0.5.0
[INFO] [stderr]   Downloaded hydroflow_lang v0.5.0
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.3.34
[INFO] [stderr]   Downloaded zipf v7.0.0
[INFO] [stderr]   Downloaded hydroflow_macro v0.5.0
[INFO] [stderr]   Downloaded tree-sitter-highlight v0.20.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ed63df777282292a2c8f33505345cd1e14638103ea6bd591d3669ce63d7fa178
[INFO] running `Command { std: "docker" "start" "-a" "ed63df777282292a2c8f33505345cd1e14638103ea6bd591d3669ce63d7fa178", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed63df777282292a2c8f33505345cd1e14638103ea6bd591d3669ce63d7fa178", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed63df777282292a2c8f33505345cd1e14638103ea6bd591d3669ce63d7fa178", kill_on_drop: false }`
[INFO] [stdout] ed63df777282292a2c8f33505345cd1e14638103ea6bd591d3669ce63d7fa178
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a43a70355c7d03bfb674aa36e00b989c9cc51ac7bbe522aa94c1bf7280ff8a0a
[INFO] running `Command { std: "docker" "start" "-a" "a43a70355c7d03bfb674aa36e00b989c9cc51ac7bbe522aa94c1bf7280ff8a0a", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.63
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling serde_derive v1.0.160
[INFO] [stderr]    Compiling serde v1.0.160
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling regex-syntax v0.7.2
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling serde_json v1.0.96
[INFO] [stderr]    Compiling ryu v1.0.13
[INFO] [stderr]    Compiling itoa v1.0.6
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling aho-corasick v1.0.2
[INFO] [stderr]    Compiling prettyplease v0.2.4
[INFO] [stderr]    Compiling tree-sitter v0.20.10
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling slotmap v1.0.6
[INFO] [stderr]    Compiling anyhow v1.0.70
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.84
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling form_urlencoded v1.1.0
[INFO] [stderr]    Compiling tree-sitter-loader v0.20.0
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling utf8-width v0.1.6
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling httpdate v1.0.2
[INFO] [stderr]    Compiling chunked_transfer v1.4.1
[INFO] [stderr]    Compiling bumpalo v3.12.0
[INFO] [stderr]    Compiling syn v2.0.14
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling home v0.5.5
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling html-escape v0.2.13
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling smallbitvec v2.5.1
[INFO] [stderr]    Compiling dirs v3.0.2
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling regex v1.8.4
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling difference v2.0.0
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]     Checking parking_lot_core v0.9.7
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]    Compiling tokio v1.27.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]     Checking unicode-ident v1.0.8
[INFO] [stderr]    Compiling toml_datetime v0.6.1
[INFO] [stderr]    Compiling webbrowser v0.8.11
[INFO] [stderr]    Compiling wasm-bindgen v0.2.84
[INFO] [stderr]    Compiling winnow v0.4.1
[INFO] [stderr]     Checking anstyle-parse v0.1.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking getrandom v0.2.9
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking mio v0.8.6
[INFO] [stderr]     Checking concolor-query v0.3.3
[INFO] [stderr]     Checking concolor-override v1.0.0
[INFO] [stderr]     Checking anstyle v0.3.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]     Checking clap_lex v0.4.1
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]     Checking is-terminal v0.4.7
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking anstream v0.2.6
[INFO] [stderr]    Compiling ref-cast v1.0.16
[INFO] [stderr]     Checking ciborium-io v0.2.0
[INFO] [stderr]     Checking os_str_bytes v6.5.0
[INFO] [stderr]     Checking clap_builder v4.2.1
[INFO] [stderr]     Checking ciborium-ll v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking textwrap v0.16.0
[INFO] [stderr]    Compiling toml_edit v0.19.8
[INFO] [stderr]     Checking cc-traits v2.0.0
[INFO] [stderr]     Checking variadics v0.0.2
[INFO] [stderr]     Checking data-encoding v2.4.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]    Compiling trybuild v1.0.80
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling rust-sitter-common v0.3.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.84
[INFO] [stderr]    Compiling syn-inline-mod v0.5.0
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking pusherator v0.0.3
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]     Checking clap v3.2.23
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking plotters v0.3.4
[INFO] [stderr]     Checking tracing-log v0.1.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking sharded-slab v0.1.4
[INFO] [stderr]     Checking console v0.15.5
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.34
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.84
[INFO] [stderr]     Checking thread_local v1.1.7
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking termcolor v1.2.0
[INFO] [stderr]     Checking iana-time-zone v0.1.56
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking similar v2.2.1
[INFO] [stderr]     Checking time-core v0.1.0
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking oorandom v11.1.3
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking hdrhistogram v7.5.2
[INFO] [stderr]     Checking time v0.3.20
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking textnonce v1.0.0
[INFO] [stderr]     Checking zipf v7.0.0
[INFO] [stderr]     Checking colored v2.0.0
[INFO] [stderr]     Checking core_affinity v0.5.10
[INFO] [stderr]    Compiling multiplatform_test v0.0.0
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking insta v1.29.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling hydroflow_lang v0.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.24
[INFO] [stderr]    Compiling tokio-macros v2.0.0
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling clap_derive v4.2.0
[INFO] [stderr]    Compiling ref-cast-impl v1.0.16
[INFO] [stderr]    Compiling sealed v0.5.0
[INFO] [stderr]    Compiling ctor v0.2.2
[INFO] [stderr]    Compiling auto_impl v1.0.1
[INFO] [stderr]    Compiling c2rust-bitfields-derive v0.2.1
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.84
[INFO] [stderr]    Compiling rust-sitter-macro v0.3.3
[INFO] [stderr]    Compiling c2rust-bitfields v0.3.0
[INFO] [stderr]    Compiling tree-sitter-c2rust v0.20.10
[INFO] [stderr]     Checking js-sys v0.3.61
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling tree-sitter-highlight v0.20.1
[INFO] [stderr]    Compiling tree-sitter-tags v0.20.2
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking tracing-subscriber v0.3.17
[INFO] [stderr]     Checking clap v4.2.1
[INFO] [stderr]    Compiling rust-sitter v0.3.3
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.34
[INFO] [stderr]     Checking wasm-bindgen-test v0.3.34
[INFO] [stderr]     Checking futures-executor v0.3.28
[INFO] [stderr]     Checking futures v0.3.28
[INFO] [stderr]     Checking tokio-util v0.7.7
[INFO] [stderr]     Checking tokio-stream v0.1.12
[INFO] [stderr]     Checking ciborium v0.2.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking lattices v0.5.0
[INFO] [stderr]     Checking basic-toml v0.1.2
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]    Compiling tree-sitter-config v0.19.0
[INFO] [stderr]    Compiling tree-sitter-cli v0.20.8
[INFO] [stderr]    Compiling rust-sitter-tool v0.3.3
[INFO] [stderr]    Compiling hydroflow_macro v0.5.0
[INFO] [stderr]    Compiling hydroflow_datalog_core v0.5.0
[INFO] [stderr]    Compiling hydroflow_datalog v0.5.0
[INFO] [stderr]     Checking hydroflow v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `declarative_macro::*`
[INFO] [stdout]   --> src/lib.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub use declarative_macro::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `declarative_macro::*`
[INFO] [stdout]   --> src/lib.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub use declarative_macro::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]  --> tests/surface_scheduling.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[multiplatform_test(test, wasm, env_tracing)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: message: unknown platform test; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_forwardref.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_forwardref.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]   --> tests/surface_scheduling.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[multiplatform_test(test, wasm, env_tracing)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: message: unknown platform test; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_forwardref.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]   --> tests/surface_scheduling.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | #[multiplatform_test(hydroflow, env_tracing)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: message: unknown platform hydroflow; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]   --> tests/surface_scheduling.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | #[multiplatform_test(hydroflow, env_tracing)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: message: unknown platform hydroflow; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> tests/surface_scheduling.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `assert_graphvis_snapshots`, `hydroflow_syntax`, `rassert_eq`
[INFO] [stdout]  --> tests/surface_scheduling.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use hydroflow::{assert_graphvis_snapshots, hydroflow_syntax, rassert_eq};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_scheduling") due to 5 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_keyed_fold.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:79:1
[INFO] [stdout]    |
[INFO] [stdout] 79 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_demux_enum.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_demux_enum.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_demux_enum.rs:72:1
[INFO] [stdout]    |
[INFO] [stdout] 72 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_unique.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_unique.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_unique.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 59 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_unique.rs:82:1
[INFO] [stdout]    |
[INFO] [stdout] 82 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_unique.rs:105:1
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_stratum.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_stratum.rs:40:1
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_stratum.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_stratum.rs:105:1
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_stratum.rs:134:1
[INFO] [stdout]     |
[INFO] [stdout] 134 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_stratum.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_stratum.rs:206:1
[INFO] [stdout]     |
[INFO] [stdout] 206 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_forwardref") due to 4 previous errors
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 14 | |         source_iter([
[INFO] [stdout] 15 | |             SubordResponse { xid: "123", mtype: 33 },
[INFO] [stdout] 16 | |             SubordResponse { xid: "123", mtype: 52 },
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |             -> for_each(|(k, v)| println!("{}: {}", k, v));
[INFO] [stdout] 24 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_lattice_batch.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 14 | |         source_iter([
[INFO] [stdout] 15 | |             SubordResponse { xid: "123", mtype: 33 },
[INFO] [stdout] 16 | |             SubordResponse { xid: "123", mtype: 52 },
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |             -> for_each(|(k, v)| println!("{}: {}", k, v));
[INFO] [stdout] 24 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_demux_enum.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         my_demux = source_iter([
[INFO] [stdout] 83 | |             Shape::Square(9.0),
[INFO] [stdout] 84 | |             Shape::Rectangle { w: 10.0, h: 8.0 },
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |         out = union() -> for_each(|area| println!("Area: {}", area));
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 39 | |         source_stream(items_recv)
[INFO] [stdout] 40 | |             -> fold_keyed::<'tick>(Vec::new, |old: &mut Vec<u32>, mut x: Vec<u32>| old.append(&mut x))
[INFO] [stdout] 41 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 42 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 39 | |         source_stream(items_recv)
[INFO] [stdout] 40 | |             -> fold_keyed::<'tick>(Vec::new, |old: &mut Vec<u32>, mut x: Vec<u32>| old.append(&mut x))
[INFO] [stdout] 41 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 42 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_demux_enum.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         my_demux = source_iter([
[INFO] [stdout] 83 | |             Shape::Square(9.0),
[INFO] [stdout] 84 | |             Shape::Rectangle { w: 10.0, h: 8.0 },
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |         out = union() -> for_each(|area| println!("Area: {}", area));
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_lattice_batch.rs:9:18
[INFO] [stdout]    |
[INFO] [stdout] 9  |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 10 | |         // Can release in the same tick
[INFO] [stdout] 11 | |         source_iter([SetUnionSingletonSet::new_from(0), SetUnionSingletonSet::new_from(1)]) -> [input]b1;
[INFO] [stdout] 12 | |         source_iter([()]) -> defer_tick() -> [signal]b1;
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |         b3 = _lattice_fold_batch::<SetUnionHashSet>() -> assert(|_| false);
[INFO] [stdout] 24 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 85 | |         source_stream(items_recv)
[INFO] [stdout] 86 | |             -> fold_keyed::<'static>(Vec::new, |old: &mut Vec<u32>, mut x: Vec<u32>| old.append(&mut x))
[INFO] [stdout] 87 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 88 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_unique") due to 6 previous errors
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:26:29
[INFO] [stdout]    |
[INFO] [stdout] 26 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 27 | |         a = difference();
[INFO] [stdout] 28 | |         source_iter([1, 2, 3, 4]) -> [pos]a;
[INFO] [stdout] 29 | |         source_iter([1, 3, 5, 7]) -> [neg]a;
[INFO] [stdout] 30 | |         a -> for_each(|x| output_inner.borrow_mut().insert(x));
[INFO] [stdout] 31 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_keyed_fold.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 85 | |         source_stream(items_recv)
[INFO] [stdout] 86 | |             -> fold_keyed::<'static>(Vec::new, |old: &mut Vec<u32>, mut x: Vec<u32>| old.append(&mut x))
[INFO] [stdout] 87 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 88 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:26:29
[INFO] [stdout]    |
[INFO] [stdout] 26 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 27 | |         a = difference();
[INFO] [stdout] 28 | |         source_iter([1, 2, 3, 4]) -> [pos]a;
[INFO] [stdout] 29 | |         source_iter([1, 3, 5, 7]) -> [neg]a;
[INFO] [stdout] 30 | |         a -> for_each(|x| output_inner.borrow_mut().insert(x));
[INFO] [stdout] 31 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_demux_enum") due to 6 previous errors
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_keyed_fold") due to 10 previous errors
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:47:29
[INFO] [stdout]    |
[INFO] [stdout] 47 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 48 | |         a = difference();
[INFO] [stdout] 49 | |         source_stream(inp_recv) -> [pos]a;
[INFO] [stdout] 50 | |         b = a -> tee();
[INFO] [stdout] 51 | |         b[0] -> defer_tick() -> [neg]a;
[INFO] [stdout] 52 | |         b[1] -> for_each(|x| output_inner.borrow_mut().insert(x));
[INFO] [stdout] 53 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_lattice_batch.rs:9:18
[INFO] [stdout]    |
[INFO] [stdout] 9  |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 10 | |         // Can release in the same tick
[INFO] [stdout] 11 | |         source_iter([SetUnionSingletonSet::new_from(0), SetUnionSingletonSet::new_from(1)]) -> [input]b1;
[INFO] [stdout] 12 | |         source_iter([()]) -> defer_tick() -> [signal]b1;
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |         b3 = _lattice_fold_batch::<SetUnionHashSet>() -> assert(|_| false);
[INFO] [stdout] 24 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:47:29
[INFO] [stdout]    |
[INFO] [stdout] 47 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 48 | |         a = difference();
[INFO] [stdout] 49 | |         source_stream(inp_recv) -> [pos]a;
[INFO] [stdout] 50 | |         b = a -> tee();
[INFO] [stdout] 51 | |         b[0] -> defer_tick() -> [neg]a;
[INFO] [stdout] 52 | |         b[1] -> for_each(|x| output_inner.borrow_mut().insert(x));
[INFO] [stdout] 53 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:84:29
[INFO] [stdout]    |
[INFO] [stdout] 84 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 85 | |         a = union() -> tee();
[INFO] [stdout] 86 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 87 | |         a[0] -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 88 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 89 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_stratum.rs:84:29
[INFO] [stdout]    |
[INFO] [stdout] 84 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]    |  _____________________________^
[INFO] [stdout] 85 | |         a = union() -> tee();
[INFO] [stdout] 86 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 87 | |         a[0] -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 88 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 89 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 111 | |         a = union() -> tee();
[INFO] [stdout] 112 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 113 | |         a[0] -> defer_tick() -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 114 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 115 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 111 | |         a = union() -> tee();
[INFO] [stdout] 112 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 113 | |         a[0] -> defer_tick() -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 114 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 115 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_lattice_batch") due to 4 previous errors
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 139 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 140 | |         a = union() -> tee();
[INFO] [stdout] 141 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 142 | |         a[0] -> defer_tick() -> defer_tick() -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 143 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 144 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 139 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 140 | |         a = union() -> tee();
[INFO] [stdout] 141 | |         source_iter([1, 3]) -> [0]a;
[INFO] [stdout] 142 | |         a[0] -> defer_tick() -> defer_tick() -> defer_tick() -> map(|x| 2 * x) -> [1]a;
[INFO] [stdout] 143 | |         a[1] -> for_each(|x| output_inner.borrow_mut().push(x));
[INFO] [stdout] 144 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:171:18
[INFO] [stdout]     |
[INFO] [stdout] 171 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 172 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 173 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 174 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 186 | |         my_join_tee[1] -> [neg]diff;
[INFO] [stdout] 187 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:171:18
[INFO] [stdout]     |
[INFO] [stdout] 171 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 172 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 173 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 174 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 186 | |         my_join_tee[1] -> [neg]diff;
[INFO] [stdout] 187 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 214 | |         a = union() -> tee();
[INFO] [stdout] 215 | |         b = union() -> tee();
[INFO] [stdout] 216 | |         c = union() -> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 219 | |         source_iter([1]) -> [1]a[1] -> [1]b[1] -> [1]c[1] -> [1]d;
[INFO] [stdout] 220 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_stratum.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 214 | |         a = union() -> tee();
[INFO] [stdout] 215 | |         b = union() -> tee();
[INFO] [stdout] 216 | |         c = union() -> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 219 | |         source_iter([1]) -> [1]a[1] -> [1]b[1] -> [1]c[1] -> [1]d;
[INFO] [stdout] 220 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 21 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_stratum") due to 22 previous errors
[INFO] running `Command { std: "docker" "inspect" "a43a70355c7d03bfb674aa36e00b989c9cc51ac7bbe522aa94c1bf7280ff8a0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a43a70355c7d03bfb674aa36e00b989c9cc51ac7bbe522aa94c1bf7280ff8a0a", kill_on_drop: false }`
[INFO] [stdout] a43a70355c7d03bfb674aa36e00b989c9cc51ac7bbe522aa94c1bf7280ff8a0a
[INFO] checking hydroflow-0.5.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate hydroflow 0.5.0 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate hydroflow 0.5.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate hydroflow 0.5.0
[INFO] removed 2 missing examples
[INFO] finished tweaking crates.io crate hydroflow 0.5.0
[INFO] tweaked toml for crates.io crate hydroflow 0.5.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate crates.io crate hydroflow 0.5.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 27b4193b865ce5b3c7bc7263d4842d13e2e90912fdd54972753fb70c92e965e3
[INFO] running `Command { std: "docker" "start" "-a" "27b4193b865ce5b3c7bc7263d4842d13e2e90912fdd54972753fb70c92e965e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "27b4193b865ce5b3c7bc7263d4842d13e2e90912fdd54972753fb70c92e965e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "27b4193b865ce5b3c7bc7263d4842d13e2e90912fdd54972753fb70c92e965e3", kill_on_drop: false }`
[INFO] [stdout] 27b4193b865ce5b3c7bc7263d4842d13e2e90912fdd54972753fb70c92e965e3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e16967b739bbe5fde55c329aa9588d4fece954baf60a279b6ebbb8bfd0154a8e
[INFO] running `Command { std: "docker" "start" "-a" "e16967b739bbe5fde55c329aa9588d4fece954baf60a279b6ebbb8bfd0154a8e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.63
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling serde_derive v1.0.160
[INFO] [stderr]    Compiling serde v1.0.160
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling regex-syntax v0.7.2
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling serde_json v1.0.96
[INFO] [stderr]    Compiling ryu v1.0.13
[INFO] [stderr]    Compiling itoa v1.0.6
[INFO] [stderr]    Compiling prettyplease v0.2.4
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling aho-corasick v1.0.2
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling tree-sitter v0.20.10
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling slotmap v1.0.6
[INFO] [stderr]    Compiling anyhow v1.0.70
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.84
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling form_urlencoded v1.1.0
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling tree-sitter-loader v0.20.0
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling httpdate v1.0.2
[INFO] [stderr]    Compiling chunked_transfer v1.4.1
[INFO] [stderr]    Compiling home v0.5.5
[INFO] [stderr]    Compiling bumpalo v3.12.0
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling utf8-width v0.1.6
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling syn v2.0.14
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling html-escape v0.2.13
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling dirs v3.0.2
[INFO] [stderr]    Compiling smallbitvec v2.5.1
[INFO] [stderr]    Compiling difference v2.0.0
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling regex v1.8.4
[INFO] [stderr]     Checking parking_lot_core v0.9.7
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling tokio v1.27.0
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling wasm-bindgen v0.2.84
[INFO] [stderr]    Compiling webbrowser v0.8.11
[INFO] [stderr]    Compiling toml_datetime v0.6.1
[INFO] [stderr]    Compiling winnow v0.4.1
[INFO] [stderr]     Checking unicode-ident v1.0.8
[INFO] [stderr]     Checking anstyle-parse v0.1.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking getrandom v0.2.9
[INFO] [stderr]     Checking mio v0.8.6
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking concolor-query v0.3.3
[INFO] [stderr]     Checking concolor-override v1.0.0
[INFO] [stderr]     Checking anstyle v0.3.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]     Checking is-terminal v0.4.7
[INFO] [stderr]     Checking clap_lex v0.4.1
[INFO] [stderr]     Checking anstream v0.2.6
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]     Checking clap_builder v4.2.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking ciborium-io v0.2.0
[INFO] [stderr]    Compiling ref-cast v1.0.16
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]     Checking ciborium-ll v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling toml_edit v0.19.8
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking data-encoding v2.4.0
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking cc-traits v2.0.0
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking variadics v0.0.2
[INFO] [stderr]     Checking textwrap v0.16.0
[INFO] [stderr]    Compiling trybuild v1.0.80
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling rust-sitter-common v0.3.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.84
[INFO] [stderr]    Compiling syn-inline-mod v0.5.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking clap v3.2.23
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking pusherator v0.0.3
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking plotters v0.3.4
[INFO] [stderr]     Checking tracing-log v0.1.3
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.84
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking console v0.15.5
[INFO] [stderr]     Checking sharded-slab v0.1.4
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.34
[INFO] [stderr]     Checking thread_local v1.1.7
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking termcolor v1.2.0
[INFO] [stderr]     Checking iana-time-zone v0.1.56
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking time-core v0.1.0
[INFO] [stderr]     Checking similar v2.2.1
[INFO] [stderr]     Checking oorandom v11.1.3
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking time v0.3.20
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking zipf v7.0.0
[INFO] [stderr]     Checking colored v2.0.0
[INFO] [stderr]     Checking core_affinity v0.5.10
[INFO] [stderr]    Compiling multiplatform_test v0.0.0
[INFO] [stderr]     Checking hdrhistogram v7.5.2
[INFO] [stderr]     Checking textnonce v1.0.0
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking insta v1.29.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling hydroflow_lang v0.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.24
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling tokio-macros v2.0.0
[INFO] [stderr]    Compiling clap_derive v4.2.0
[INFO] [stderr]    Compiling ref-cast-impl v1.0.16
[INFO] [stderr]    Compiling sealed v0.5.0
[INFO] [stderr]    Compiling ctor v0.2.2
[INFO] [stderr]    Compiling auto_impl v1.0.1
[INFO] [stderr]    Compiling c2rust-bitfields-derive v0.2.1
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.84
[INFO] [stderr]    Compiling rust-sitter-macro v0.3.3
[INFO] [stderr]    Compiling c2rust-bitfields v0.3.0
[INFO] [stderr]    Compiling tree-sitter-c2rust v0.20.10
[INFO] [stderr]     Checking js-sys v0.3.61
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling tree-sitter-tags v0.20.2
[INFO] [stderr]    Compiling tree-sitter-highlight v0.20.1
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking tracing-subscriber v0.3.17
[INFO] [stderr]     Checking clap v4.2.1
[INFO] [stderr]    Compiling rust-sitter v0.3.3
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.34
[INFO] [stderr]     Checking wasm-bindgen-test v0.3.34
[INFO] [stderr]     Checking futures-executor v0.3.28
[INFO] [stderr]     Checking futures v0.3.28
[INFO] [stderr]     Checking tokio-util v0.7.7
[INFO] [stderr]     Checking tokio-stream v0.1.12
[INFO] [stderr]     Checking lattices v0.5.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking ciborium v0.2.0
[INFO] [stderr]     Checking basic-toml v0.1.2
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]    Compiling tree-sitter-config v0.19.0
[INFO] [stderr]    Compiling tree-sitter-cli v0.20.8
[INFO] [stderr]    Compiling rust-sitter-tool v0.3.3
[INFO] [stderr]    Compiling hydroflow_macro v0.5.0
[INFO] [stderr]    Compiling hydroflow_datalog_core v0.5.0
[INFO] [stderr]    Compiling hydroflow_datalog v0.5.0
[INFO] [stderr]     Checking hydroflow v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 |             opposite_ix: 0..0,
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:69:50
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         self.state.opposite_ix = 0..self.state.rtab.len();
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:77:50
[INFO] [stdout]    |
[INFO] [stdout] 77 |                         self.state.opposite_ix = 0..self.state.ltab.len();
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/scheduled/handoff/tee.rs:95:18
[INFO] [stdout]    |
[INFO] [stdout] 95 |         for i in 0..(readers.len() - 1) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/scheduled/net/mod.rs:93:44
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let address = u32::from_be_bytes(v[0..ADDRESS_LEN].try_into().unwrap());
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/scheduled/net/mod.rs:94:29
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let batch = v.slice(ADDRESS_LEN..);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scheduled/query.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |         for _ in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/mod.rs:281:65
[INFO] [stdout]     |
[INFO] [stdout] 281 |         output_so_far.push_str(&String::from_utf8_lossy(&buffer[0..bytes_read]));
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `declarative_macro::*`
[INFO] [stdout]   --> src/lib.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub use declarative_macro::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 |             opposite_ix: 0..0,
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:69:50
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         self.state.opposite_ix = 0..self.state.rtab.len();
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/compiled/pull/cross_join.rs:77:50
[INFO] [stdout]    |
[INFO] [stdout] 77 |                         self.state.opposite_ix = 0..self.state.ltab.len();
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/compiled/pull/cross_join.rs:107:20
[INFO] [stdout]     |
[INFO] [stdout] 107 |         let lhs = (0..3).map(|x| (format!("left {}", x)));
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/compiled/pull/cross_join.rs:108:20
[INFO] [stdout]     |
[INFO] [stdout] 108 |         let rhs = (10..13).map(|x| (format!("right {}", x)));
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/compiled/pull/symmetric_hash_join.rs:125:20
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let lhs = (0..10).map(|x| (x, format!("left {}", x)));
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/compiled/pull/symmetric_hash_join.rs:126:20
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let rhs = (6..15).map(|x| (x / 2, format!("right {} / 2", x)));
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/scheduled/handoff/tee.rs:95:18
[INFO] [stdout]    |
[INFO] [stdout] 95 |         for i in 0..(readers.len() - 1) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/scheduled/net/mod.rs:93:44
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let address = u32::from_be_bytes(v[0..ADDRESS_LEN].try_into().unwrap());
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/scheduled/net/mod.rs:94:29
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let batch = v.slice(ADDRESS_LEN..);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scheduled/query.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |         for _ in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:278:51
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let millis = rand::thread_rng().gen_range(0..n);
[INFO] [stdout]     |                                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:299:21
[INFO] [stdout]     |
[INFO] [stdout] 299 |         let runs = (0..1_000).map(|_| async {
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:305:26
[INFO] [stdout]     |
[INFO] [stdout] 305 |                 for x in 0..100 {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |         let runs = (0..1_000).map(|_| async {
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:338:26
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 for x in 0..100 {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:344:26
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 for x in 100..200 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/unsync/mpsc.rs:350:26
[INFO] [stdout]     |
[INFO] [stdout] 350 |                 for x in 200..300 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/mod.rs:239:18
[INFO] [stdout]     |
[INFO] [stdout] 239 |         for x in 0..1000 {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/mod.rs:249:18
[INFO] [stdout]     |
[INFO] [stdout] 249 |         for x in 0..1000 {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/mod.rs:281:65
[INFO] [stdout]     |
[INFO] [stdout] 281 |         output_so_far.push_str(&String::from_utf8_lossy(&buffer[0..bytes_read]));
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `declarative_macro::*`
[INFO] [stdout]   --> src/lib.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub use declarative_macro::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]  --> examples/example_2_simple_1.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |         source_iter(0..10)
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]  --> examples/example_2_simple_1.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |             -> map(|n| (n..=n+1))
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_batch.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/groupby.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_reduce.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_reduce.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_demux_enum.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_demux_enum.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_reduce.rs:72:1
[INFO] [stdout]    |
[INFO] [stdout] 72 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_reduce.rs:109:1
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_demux_enum.rs:72:1
[INFO] [stdout]    |
[INFO] [stdout] 72 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_book.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_fold.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_fold.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_fold.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout] 81 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_fold.rs:129:1
[INFO] [stdout]     |
[INFO] [stdout] 129 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_batch.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 11 | |         gate = defer_signal();
[INFO] [stdout] 12 | |         source_iter([1, 2, 3]) -> [input]gate;
[INFO] [stdout] 13 | |         source_stream(signal_rx) -> [signal]gate;
[INFO] [stdout] 14 | |
[INFO] [stdout] 15 | |         gate -> for_each(|x| egress_tx.send(x).unwrap());
[INFO] [stdout] 16 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_difference.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_difference.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_difference.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_difference.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_difference.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_difference.rs:217:1
[INFO] [stdout]     |
[INFO] [stdout] 217 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "groupby") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_demux_enum.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         my_demux = source_iter([
[INFO] [stdout] 83 | |             Shape::Square(9.0),
[INFO] [stdout] 84 | |             Shape::Rectangle { w: 10.0, h: 8.0 },
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |         out = union() -> for_each(|area| println!("Area: {}", area));
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> examples/deadlock_detector/peer.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 |         gossip = map(identity) -> persist() -> [0]gossip_join;
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> examples/deadlock_detector/peer.rs:50:21
[INFO] [stdout]    |
[INFO] [stdout] 50 |         peers[1] -> persist() -> [1]gossip_join;
[INFO] [stdout]    |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_book.rs:6:18
[INFO] [stdout]    |
[INFO] [stdout] 6  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 7  | |         my_tee = source_iter(vec!["Hello", "world"]) -> tee();
[INFO] [stdout] 8  | |         my_tee[0] -> map(|x| x.to_uppercase()) -> [0]my_union;
[INFO] [stdout] 9  | |         my_tee[1] -> map(|x| x.to_lowercase()) -> [1]my_union;
[INFO] [stdout] 10 | |         my_union = union() -> for_each(|x| println!("{}", x));
[INFO] [stdout] 11 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]    --> tests/surface_codegen.rs:763:1
[INFO] [stdout]     |
[INFO] [stdout] 763 | #[multiplatform_test(test)]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: message: unknown platform test; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> tests/surface_difference.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |         diff = difference_multiset::<'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> tests/surface_difference.rs:226:16
[INFO] [stdout]     |
[INFO] [stdout] 226 |         diff = difference_multiset::<'static, 'tick>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:9:18
[INFO] [stdout]    |
[INFO] [stdout] 9  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 10 | |         source_stream(items_recv)
[INFO] [stdout] 11 | |             -> reduce::<'tick>(|acc: &mut u32, next: u32| *acc += next)
[INFO] [stdout] 12 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 13 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_join_fused.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_join_fused.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_join_fused.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_join_fused.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_join_fused.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_join_fused.rs:158:1
[INFO] [stdout]     |
[INFO] [stdout] 158 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_join_fused.rs:189:1
[INFO] [stdout]     |
[INFO] [stdout] 189 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_batch.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 11 | |         gate = defer_signal();
[INFO] [stdout] 12 | |         source_iter([1, 2, 3]) -> [input]gate;
[INFO] [stdout] 13 | |         source_stream(signal_rx) -> [signal]gate;
[INFO] [stdout] 14 | |
[INFO] [stdout] 15 | |         gate -> for_each(|x| egress_tx.send(x).unwrap());
[INFO] [stdout] 16 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> tests/surface_join_fused.rs:92:19
[INFO] [stdout]    |
[INFO] [stdout] 92 |         my_join = join_fused_lhs::<'static, 'static>(Fold(SetUnionHashSet::default, Merge::merge))
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> tests/surface_join_fused.rs:174:19
[INFO] [stdout]     |
[INFO] [stdout] 174 |         my_join = join_fused_rhs::<'static, 'static>(Fold(SetUnionHashSet::default, Merge::merge))
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:9:18
[INFO] [stdout]    |
[INFO] [stdout] 9  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 10 | |         source_stream(items_recv)
[INFO] [stdout] 11 | |             -> reduce::<'tick>(|acc: &mut u32, next: u32| *acc += next)
[INFO] [stdout] 12 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 13 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: custom attribute panicked
[INFO] [stdout]   --> tests/surface_context.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | #[multiplatform_test(hydroflow)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: message: unknown platform hydroflow; want platform in [default, wasm]
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         source_stream(items_recv)
[INFO] [stdout] 14 | |             -> fold::<'tick>(Vec::new(), |old: &mut Vec<u32>, mut x: Vec<u32>| { old.append(&mut x); })
[INFO] [stdout] 15 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 16 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_book.rs:6:18
[INFO] [stdout]    |
[INFO] [stdout] 6  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 7  | |         my_tee = source_iter(vec!["Hello", "world"]) -> tee();
[INFO] [stdout] 8  | |         my_tee[0] -> map(|x| x.to_uppercase()) -> [0]my_union;
[INFO] [stdout] 9  | |         my_tee[1] -> map(|x| x.to_lowercase()) -> [1]my_union;
[INFO] [stdout] 10 | |         my_union = union() -> for_each(|x| println!("{}", x));
[INFO] [stdout] 11 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_demux_enum.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         my_demux = source_iter([
[INFO] [stdout] 83 | |             Shape::Square(9.0),
[INFO] [stdout] 84 | |             Shape::Rectangle { w: 10.0, h: 8.0 },
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |         out = union() -> for_each(|area| println!("Area: {}", area));
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         source_stream(items_recv)
[INFO] [stdout] 14 | |             -> fold::<'tick>(Vec::new(), |old: &mut Vec<u32>, mut x: Vec<u32>| { old.append(&mut x); })
[INFO] [stdout] 15 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 16 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `lattice_reduce` expects lattice flow input, has sequential input. This may be an error in the future.
[INFO] [stdout]  --> tests/surface_lattice_reduce.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 |             -> lattice_reduce()
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_context.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_context.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]  --> tests/surface_context.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[multiplatform_test]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> tests/surface_context.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> tests/surface_context.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `Instant`
[INFO] [stdout]  --> tests/surface_context.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use instant::{Duration, Instant};
[INFO] [stdout]   |               ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:43:18
[INFO] [stdout]    |
[INFO] [stdout] 43 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 44 | |         source_stream(items_recv)
[INFO] [stdout] 45 | |             -> reduce::<'static>(|acc: &mut u32, next: u32| *acc += next)
[INFO] [stdout] 46 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 47 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> tests/surface_context.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 |         source_iter(0..10)
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 50 | |         source_stream(items_recv)
[INFO] [stdout] 51 | |             -> fold::<'static>(Vec::new(), |old: &mut Vec<u32>, mut x: Vec<u32>| { old.append(&mut x); })
[INFO] [stdout] 52 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 53 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_batch") due to 4 previous errors
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:43:18
[INFO] [stdout]    |
[INFO] [stdout] 43 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 44 | |         source_stream(items_recv)
[INFO] [stdout] 45 | |             -> reduce::<'static>(|acc: &mut u32, next: u32| *acc += next)
[INFO] [stdout] 46 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 47 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 50 | |         source_stream(items_recv)
[INFO] [stdout] 51 | |             -> fold::<'static>(Vec::new(), |old: &mut Vec<u32>, mut x: Vec<u32>| { old.append(&mut x); })
[INFO] [stdout] 52 | |             -> for_each(|v| result_send.send(v).unwrap());
[INFO] [stdout] 53 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_demux_enum") due to 6 previous errors
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_difference.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 12 | |         diff = difference() -> for_each(|x| println!("diff: {:?}", x));
[INFO] [stdout] 13 | |
[INFO] [stdout] 14 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |
[INFO] [stdout] 23 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:76:18
[INFO] [stdout]    |
[INFO] [stdout] 76 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 77 | |         source_stream(items_recv)
[INFO] [stdout] 78 | |             -> reduce(|a: &mut _, b| *a += b)
[INFO] [stdout] 79 | |             -> for_each(|v| print!("{:?}", v));
[INFO] [stdout] 80 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_book") due to 4 previous errors
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:85:23
[INFO] [stdout]    |
[INFO] [stdout] 85 |       let mut df_pull = hydroflow_syntax! {
[INFO] [stdout]    |  _______________________^
[INFO] [stdout] 86 | |         source_iter([(1,1), (1,2), (2,3), (2,4)])
[INFO] [stdout] 87 | |             -> fold::<'tick>(HashMap::<u8, u8>::new(), |ht: &mut HashMap<u8, u8>, t: (u8,u8)| {
[INFO] [stdout] 88 | |                     let e = ht.entry(t.0).or_insert(0);
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |             -> for_each(|(k,v)| out_send.send((k,v)).unwrap());
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_reduce.rs:76:18
[INFO] [stdout]    |
[INFO] [stdout] 76 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 77 | |         source_stream(items_recv)
[INFO] [stdout] 78 | |             -> reduce(|a: &mut _, b| *a += b)
[INFO] [stdout] 79 | |             -> for_each(|v| print!("{:?}", v));
[INFO] [stdout] 80 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_fold.rs:85:23
[INFO] [stdout]    |
[INFO] [stdout] 85 |       let mut df_pull = hydroflow_syntax! {
[INFO] [stdout]    |  _______________________^
[INFO] [stdout] 86 | |         source_iter([(1,1), (1,2), (2,3), (2,4)])
[INFO] [stdout] 87 | |             -> fold::<'tick>(HashMap::<u8, u8>::new(), |ht: &mut HashMap<u8, u8>, t: (u8,u8)| {
[INFO] [stdout] 88 | |                     let e = ht.entry(t.0).or_insert(0);
[INFO] [stdout] ...  |
[INFO] [stdout] 92 | |             -> for_each(|(k,v)| out_send.send((k,v)).unwrap());
[INFO] [stdout] 93 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_context.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 24 | |         source_iter(0..10)
[INFO] [stdout] 25 | |             -> map(|n| context.add_state(n))
[INFO] [stdout] 26 | |             -> next_stratum()
[INFO] [stdout] 27 | |             -> for_each(|handle| println!("{:?}: {}", handle, context.state_ref(handle)));
[INFO] [stdout] 28 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_reduce.rs:114:18
[INFO] [stdout]     |
[INFO] [stdout] 114 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 115 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 116 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 117 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |         my_join_tee[1] -> reduce(|a: &mut _, b| *a += b) -> for_each(|sum| println!("{}", sum));
[INFO] [stdout] 124 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 30 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 31 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 32 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 42 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_fold.rs:106:23
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let mut df_push = hydroflow_syntax! {
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 107 | |         datagen = source_iter([(1,2), (1,2), (2,4), (2,4)]) -> tee();
[INFO] [stdout] 108 | |         datagen[0] -> fold::<'tick>(HashMap::<u8, u8>::new(), |ht: &mut HashMap<u8, u8>, t:(u8,u8)| {
[INFO] [stdout] 109 | |                 let e = ht.entry(t.0).or_insert(0);
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |         datagen[1] -> null();
[INFO] [stdout] 115 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_codegen.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_codegen.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_codegen.rs:52:1
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_codegen.rs:67:1
[INFO] [stdout]    |
[INFO] [stdout] 67 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]   --> tests/surface_codegen.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[multiplatform_test]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:102:1
[INFO] [stdout]     |
[INFO] [stdout] 102 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:115:1
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:147:1
[INFO] [stdout]     |
[INFO] [stdout] 147 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:202:1
[INFO] [stdout]     |
[INFO] [stdout] 202 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:267:1
[INFO] [stdout]     |
[INFO] [stdout] 267 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:295:1
[INFO] [stdout]     |
[INFO] [stdout] 295 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:321:1
[INFO] [stdout]     |
[INFO] [stdout] 321 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:383:1
[INFO] [stdout]     |
[INFO] [stdout] 383 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:415:1
[INFO] [stdout]     |
[INFO] [stdout] 415 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:445:1
[INFO] [stdout]     |
[INFO] [stdout] 445 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:474:1
[INFO] [stdout]     |
[INFO] [stdout] 474 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:517:1
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:550:1
[INFO] [stdout]     |
[INFO] [stdout] 550 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:661:1
[INFO] [stdout]     |
[INFO] [stdout] 661 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:752:1
[INFO] [stdout]     |
[INFO] [stdout] 752 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]    --> tests/surface_codegen.rs:784:1
[INFO] [stdout]     |
[INFO] [stdout] 784 | #[multiplatform_test]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `wasm_bindgen_test_macro`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `multiplatform_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_reduce.rs:114:18
[INFO] [stdout]     |
[INFO] [stdout] 114 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 115 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 116 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 117 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |         my_join_tee[1] -> reduce(|a: &mut _, b| *a += b) -> for_each(|sum| println!("{}", sum));
[INFO] [stdout] 124 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_difference.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 12 | |         diff = difference() -> for_each(|x| println!("diff: {:?}", x));
[INFO] [stdout] 13 | |
[INFO] [stdout] 14 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |
[INFO] [stdout] 23 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_context.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 24 | |         source_iter(0..10)
[INFO] [stdout] 25 | |             -> map(|n| context.add_state(n))
[INFO] [stdout] 26 | |             -> next_stratum()
[INFO] [stdout] 27 | |             -> for_each(|handle| println!("{:?}: {}", handle, context.state_ref(handle)));
[INFO] [stdout] 28 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_fold.rs:106:23
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let mut df_push = hydroflow_syntax! {
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 107 | |         datagen = source_iter([(1,2), (1,2), (2,4), (2,4)]) -> tee();
[INFO] [stdout] 108 | |         datagen[0] -> fold::<'tick>(HashMap::<u8, u8>::new(), |ht: &mut HashMap<u8, u8>, t:(u8,u8)| {
[INFO] [stdout] 109 | |                 let e = ht.entry(t.0).or_insert(0);
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |         datagen[1] -> null();
[INFO] [stdout] 115 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> tests/surface_codegen.rs:425:23
[INFO] [stdout]     |
[INFO] [stdout] 425 |         diff_static = anti_join_multiset::<'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> tests/surface_codegen.rs:685:18
[INFO] [stdout]     |
[INFO] [stdout] 685 |                 (t_from..=t_to).contains(&t_contact)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> tests/surface_codegen.rs:788:55
[INFO] [stdout]     |
[INFO] [stdout] 788 |     let stream = hydroflow::util::iter_batches_stream(0..ITEMS, BATCH);
[INFO] [stdout]     |                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> tests/surface_codegen.rs:791:29
[INFO] [stdout]     |
[INFO] [stdout] 791 |     let expected: Vec<_> = (0..ITEMS).map(|n| (n / BATCH, n)).collect();
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_context.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 36 | |         source_iter([()])
[INFO] [stdout] 37 | |             -> map(|_| context.current_tick_start())
[INFO] [stdout] 38 | |             -> defer_tick()
[INFO] [stdout] 39 | |             -> assert(|t: &hydroflow::instant::Instant| t.elapsed().as_nanos() > 0)
[INFO] [stdout] 40 | |             -> for_each(|t: hydroflow::instant::Instant| println!("Time between ticks: {:?}", t.elapsed()));
[INFO] [stdout] 41 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_fold.rs:133:18
[INFO] [stdout]     |
[INFO] [stdout] 133 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 134 | |         source_stream(items_recv)
[INFO] [stdout] 135 | |             -> fold::<'tick>(Vec::new(), Vec::push)
[INFO] [stdout] 136 | |             -> flat_map(|mut vec| { vec.sort(); vec })
[INFO] [stdout] 137 | |             -> for_each(|v| print!("{:?}, ", v));
[INFO] [stdout] 138 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 30 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 31 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 32 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 42 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_fold.rs:133:18
[INFO] [stdout]     |
[INFO] [stdout] 133 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 134 | |         source_stream(items_recv)
[INFO] [stdout] 135 | |             -> fold::<'tick>(Vec::new(), Vec::push)
[INFO] [stdout] 136 | |             -> flat_map(|mut vec| { vec.sort(); vec })
[INFO] [stdout] 137 | |             -> for_each(|v| print!("{:?}, ", v));
[INFO] [stdout] 138 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_difference.rs:53:18
[INFO] [stdout]    |
[INFO] [stdout] 53 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 54 | |         diff = difference::<'tick, 'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 55 | |
[INFO] [stdout] 56 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |
[INFO] [stdout] 65 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_context.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 36 | |         source_iter([()])
[INFO] [stdout] 37 | |             -> map(|_| context.current_tick_start())
[INFO] [stdout] 38 | |             -> defer_tick()
[INFO] [stdout] 39 | |             -> assert(|t: &hydroflow::instant::Instant| t.elapsed().as_nanos() > 0)
[INFO] [stdout] 40 | |             -> for_each(|t: hydroflow::instant::Instant| println!("Time between ticks: {:?}", t.elapsed()));
[INFO] [stdout] 41 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 12 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_reduce") due to 13 previous errors
[INFO] [stdout] error: aborting due to 14 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_fold") due to 15 previous errors
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_difference.rs:53:18
[INFO] [stdout]    |
[INFO] [stdout] 53 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 54 | |         diff = difference::<'tick, 'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 55 | |
[INFO] [stdout] 56 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |
[INFO] [stdout] 65 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_context") due to 9 previous errors; 4 warnings emitted
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:94:18
[INFO] [stdout]     |
[INFO] [stdout] 94  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 95  | |         diff = difference_multiset() -> for_each(|x| println!("diff: {:?}", x));
[INFO] [stdout] 96  | |
[INFO] [stdout] 97  | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 105 | |
[INFO] [stdout] 106 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:94:18
[INFO] [stdout]     |
[INFO] [stdout] 94  |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 95  | |         diff = difference_multiset() -> for_each(|x| println!("diff: {:?}", x));
[INFO] [stdout] 96  | |
[INFO] [stdout] 97  | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 105 | |
[INFO] [stdout] 106 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:54:18
[INFO] [stdout]    |
[INFO] [stdout] 54 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 55 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 56 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 57 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 66 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 67 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:136:18
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 137 | |         diff = difference_multiset::<'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 138 | |
[INFO] [stdout] 139 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |
[INFO] [stdout] 148 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:136:18
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 137 | |         diff = difference_multiset::<'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 138 | |
[INFO] [stdout] 139 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |
[INFO] [stdout] 148 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 106 | |         t = source_iter([1]) -> tee();
[INFO] [stdout] 107 | |         j = union() -> for_each(|x| println!("{}", x));
[INFO] [stdout] 108 | |         t[0] -> map(std::convert::identity) -> map(std::convert::identity) -> [0]j;
[INFO] [stdout] 109 | |         t[1] -> map(std::convert::identity) -> map(std::convert::identity) -> [1]j;
[INFO] [stdout] 110 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:54:18
[INFO] [stdout]    |
[INFO] [stdout] 54 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 55 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 56 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 57 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 66 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 67 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 106 | |         t = source_iter([1]) -> tee();
[INFO] [stdout] 107 | |         j = union() -> for_each(|x| println!("{}", x));
[INFO] [stdout] 108 | |         t[0] -> map(std::convert::identity) -> map(std::convert::identity) -> [0]j;
[INFO] [stdout] 109 | |         t[1] -> map(std::convert::identity) -> map(std::convert::identity) -> [1]j;
[INFO] [stdout] 110 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:182:18
[INFO] [stdout]     |
[INFO] [stdout] 182 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 183 | |         diff = difference_multiset::<'tick, 'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 184 | |
[INFO] [stdout] 185 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 193 | |
[INFO] [stdout] 194 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:182:18
[INFO] [stdout]     |
[INFO] [stdout] 182 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 183 | |         diff = difference_multiset::<'tick, 'static>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 184 | |
[INFO] [stdout] 185 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 193 | |
[INFO] [stdout] 194 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:271:20
[INFO] [stdout]     |
[INFO] [stdout] 271 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 272 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 273 | |         diff = difference() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 274 | |         inp -> [pos]diff;
[INFO] [stdout] 275 | |         inp -> defer_tick() -> [neg]diff;
[INFO] [stdout] 276 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:225:18
[INFO] [stdout]     |
[INFO] [stdout] 225 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 226 | |         diff = difference_multiset::<'static, 'tick>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 227 | |
[INFO] [stdout] 228 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 236 | |
[INFO] [stdout] 237 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:271:20
[INFO] [stdout]     |
[INFO] [stdout] 271 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 272 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 273 | |         diff = difference() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 274 | |         inp -> [pos]diff;
[INFO] [stdout] 275 | |         inp -> defer_tick() -> [neg]diff;
[INFO] [stdout] 276 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 83 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 84 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 93 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 94 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_difference.rs:225:18
[INFO] [stdout]     |
[INFO] [stdout] 225 |       let mut df = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 226 | |         diff = difference_multiset::<'static, 'tick>() -> sort() -> for_each(|v| output_send.send(v).unwrap());
[INFO] [stdout] 227 | |
[INFO] [stdout] 228 | |         poss = source_stream(pos_recv); //-> tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 236 | |
[INFO] [stdout] 237 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]   --> tests/surface_join_fused.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 82 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 83 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 84 | |             -> [0]my_join;
[INFO] [stdout] ...  |
[INFO] [stdout] 93 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 94 | |     };
[INFO] [stdout]    | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 18 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_difference") due to 19 previous errors; 2 warnings emitted
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:299:20
[INFO] [stdout]     |
[INFO] [stdout] 299 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 300 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 301 | |         diff = anti_join() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 302 | |         inp -> [pos]diff;
[INFO] [stdout] 303 | |         inp -> defer_tick() -> map(|x: (usize, usize)| x.0) -> [neg]diff;
[INFO] [stdout] 304 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:299:20
[INFO] [stdout]     |
[INFO] [stdout] 299 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 300 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 301 | |         diff = anti_join() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 302 | |         inp -> [pos]diff;
[INFO] [stdout] 303 | |         inp -> defer_tick() -> map(|x: (usize, usize)| x.0) -> [neg]diff;
[INFO] [stdout] 304 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:111:18
[INFO] [stdout]     |
[INFO] [stdout] 111 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 112 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 113 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 114 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 124 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:111:18
[INFO] [stdout]     |
[INFO] [stdout] 111 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 112 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 113 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 114 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 124 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:326:20
[INFO] [stdout]     |
[INFO] [stdout] 326 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 327 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 328 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 329 | |         pos -> [pos]diff_static;
[INFO] [stdout] 330 | |         neg -> [neg]diff_static;
[INFO] [stdout] 331 | |         diff_static = anti_join::<'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 332 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:326:20
[INFO] [stdout]     |
[INFO] [stdout] 326 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 327 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 328 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 329 | |         pos -> [pos]diff_static;
[INFO] [stdout] 330 | |         neg -> [neg]diff_static;
[INFO] [stdout] 331 | |         diff_static = anti_join::<'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 332 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:356:20
[INFO] [stdout]     |
[INFO] [stdout] 356 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 357 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 358 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 359 | |         pos -> [pos]diff_static;
[INFO] [stdout] 360 | |         neg -> [neg]diff_static;
[INFO] [stdout] 361 | |         diff_static = anti_join::<'tick, 'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 362 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:356:20
[INFO] [stdout]     |
[INFO] [stdout] 356 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 357 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 358 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 359 | |         pos -> [pos]diff_static;
[INFO] [stdout] 360 | |         neg -> [neg]diff_static;
[INFO] [stdout] 361 | |         diff_static = anti_join::<'tick, 'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 362 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:136:18
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 137 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 138 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 139 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 149 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:388:20
[INFO] [stdout]     |
[INFO] [stdout] 388 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 389 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 390 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 391 | |         pos -> [pos]diff_static;
[INFO] [stdout] 392 | |         neg -> [neg]diff_static;
[INFO] [stdout] 393 | |         diff_static = anti_join_multiset::<'tick, 'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 394 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:136:18
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 137 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 138 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 139 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 149 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:388:20
[INFO] [stdout]     |
[INFO] [stdout] 388 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 389 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 390 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 391 | |         pos -> [pos]diff_static;
[INFO] [stdout] 392 | |         neg -> [neg]diff_static;
[INFO] [stdout] 393 | |         diff_static = anti_join_multiset::<'tick, 'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 394 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:420:20
[INFO] [stdout]     |
[INFO] [stdout] 420 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 421 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 422 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 423 | |         pos -> [pos]diff_static;
[INFO] [stdout] 424 | |         neg -> [neg]diff_static;
[INFO] [stdout] 425 | |         diff_static = anti_join_multiset::<'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 426 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:420:20
[INFO] [stdout]     |
[INFO] [stdout] 420 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 421 | |         pos = source_stream(pos_recv);
[INFO] [stdout] 422 | |         neg = source_stream(neg_recv);
[INFO] [stdout] 423 | |         pos -> [pos]diff_static;
[INFO] [stdout] 424 | |         neg -> [neg]diff_static;
[INFO] [stdout] 425 | |         diff_static = anti_join_multiset::<'static>() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 426 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 164 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 165 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 166 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 176 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 177 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:449:20
[INFO] [stdout]     |
[INFO] [stdout] 449 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 450 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 451 | |         diff = anti_join_multiset() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 452 | |         inp -> [pos]diff;
[INFO] [stdout] 453 | |         inp -> defer_tick() -> map(|x: (usize, usize)| x.0) -> [neg]diff;
[INFO] [stdout] 454 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:449:20
[INFO] [stdout]     |
[INFO] [stdout] 449 |       let mut flow = hydroflow::hydroflow_syntax! {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 450 | |         inp = source_stream(inp_recv) -> tee();
[INFO] [stdout] 451 | |         diff = anti_join_multiset() -> sort() -> for_each(|x| out_send.send(x).unwrap());
[INFO] [stdout] 452 | |         inp -> [pos]diff;
[INFO] [stdout] 453 | |         inp -> defer_tick() -> map(|x: (usize, usize)| x.0) -> [neg]diff;
[INFO] [stdout] 454 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow::hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 164 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 165 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 166 | |             -> [1]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 176 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 177 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:478:18
[INFO] [stdout]     |
[INFO] [stdout] 478 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 479 | |         source_stream(items_recv)
[INFO] [stdout] 480 | |             -> sort()
[INFO] [stdout] 481 | |             -> for_each(|v| print!("{:?}, ", v));
[INFO] [stdout] 482 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:478:18
[INFO] [stdout]     |
[INFO] [stdout] 478 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 479 | |         source_stream(items_recv)
[INFO] [stdout] 480 | |             -> sort()
[INFO] [stdout] 481 | |             -> for_each(|v| print!("{:?}, ", v));
[INFO] [stdout] 482 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:507:18
[INFO] [stdout]     |
[INFO] [stdout] 507 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 508 | |         source_iter(vec!((2, 'y'), (3, 'x'), (1, 'z')))
[INFO] [stdout] 509 | |             -> sort_by_key(|(k, _v)| k)
[INFO] [stdout] 510 | |             -> for_each(|v| println!("{:?}", v));
[INFO] [stdout] 511 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:194:18
[INFO] [stdout]     |
[INFO] [stdout] 194 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 195 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 196 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 197 | |             -> [0]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 207 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:507:18
[INFO] [stdout]     |
[INFO] [stdout] 507 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 508 | |         source_iter(vec!((2, 'y'), (3, 'x'), (1, 'z')))
[INFO] [stdout] 509 | |             -> sort_by_key(|(k, _v)| k)
[INFO] [stdout] 510 | |             -> for_each(|v| println!("{:?}", v));
[INFO] [stdout] 511 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:539:18
[INFO] [stdout]     |
[INFO] [stdout] 539 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 540 | |         source_iter(dummies) -> sort_by_key(|d| &d.x) -> for_each(|d| out_send.send(d).unwrap());
[INFO] [stdout] 541 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_join_fused.rs:194:18
[INFO] [stdout]     |
[INFO] [stdout] 194 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 195 | |         source_iter([(7, 1), (7, 2)])
[INFO] [stdout] 196 | |             -> map(|(k, v)| (k, SetUnionSingletonSet::new_from(v)))
[INFO] [stdout] 197 | |             -> [0]my_join;
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |             -> for_each(|x| results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x));
[INFO] [stdout] 207 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:539:18
[INFO] [stdout]     |
[INFO] [stdout] 539 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 540 | |         source_iter(dummies) -> sort_by_key(|d| &d.x) -> for_each(|d| out_send.send(d).unwrap());
[INFO] [stdout] 541 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `x` on type `&_`
[INFO] [stdout]    --> tests/surface_codegen.rs:540:52
[INFO] [stdout]     |
[INFO] [stdout] 540 |         source_iter(dummies) -> sort_by_key(|d| &d.x) -> for_each(|d| out_send.send(d).unwrap());
[INFO] [stdout]     |                                                    ^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:574:29
[INFO] [stdout]     |
[INFO] [stdout] 574 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 575 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 576 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 577 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 583 | |         my_join_tee[1] -> for_each(|x| println!("Reached: {}", x));
[INFO] [stdout] 584 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:574:29
[INFO] [stdout]     |
[INFO] [stdout] 574 |       let mut df: Hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 575 | |         reached_vertices = union() -> map(|v| (v, ()));
[INFO] [stdout] 576 | |         source_iter(vec![0]) -> [0]reached_vertices;
[INFO] [stdout] 577 | |
[INFO] [stdout] ...   |
[INFO] [stdout] 583 | |         my_join_tee[1] -> for_each(|x| println!("Reached: {}", x));
[INFO] [stdout] 584 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:616:18
[INFO] [stdout]     |
[INFO] [stdout] 616 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 617 | |         // edge(x,y) :- link(x,y)
[INFO] [stdout] 618 | |         edge_union_tee = union() -> tee();
[INFO] [stdout] 619 | |         link_tee = tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 628 | |         edge_union_tee[1] -> for_each(|(a, b)| println!("transitive closure: ({},{})", a, b));
[INFO] [stdout] 629 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:616:18
[INFO] [stdout]     |
[INFO] [stdout] 616 |       let mut df = hydroflow_syntax! {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 617 | |         // edge(x,y) :- link(x,y)
[INFO] [stdout] 618 | |         edge_union_tee = union() -> tee();
[INFO] [stdout] 619 | |         link_tee = tee();
[INFO] [stdout] ...   |
[INFO] [stdout] 628 | |         edge_union_tee[1] -> for_each(|(a, b)| println!("transitive closure: ({},{})", a, b));
[INFO] [stdout] 629 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `borrow_mut_swap` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:676:25
[INFO] [stdout]     |
[INFO] [stdout] 676 |       let mut hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 677 | |         contacts = source_stream(contacts_recv) -> flat_map(|(pid_a, pid_b, time)| [(pid_a, (pid_b, time)), (pid_b, (pid_a, time))]);
[INFO] [stdout] 678 | |
[INFO] [stdout] 679 | |         exposed = union();
[INFO] [stdout] ...   |
[INFO] [stdout] 704 | |         new_exposed[1] -> [1]notifs;
[INFO] [stdout] 705 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<RECV, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `give` found for struct `Port` in the current scope
[INFO] [stdout]    --> tests/surface_codegen.rs:676:25
[INFO] [stdout]     |
[INFO] [stdout] 676 |       let mut hydroflow = hydroflow_syntax! {
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 677 | |         contacts = source_stream(contacts_recv) -> flat_map(|(pid_a, pid_b, time)| [(pid_a, (pid_b, time)), (pid_b, (pid_a, time))]);
[INFO] [stdout] 678 | |
[INFO] [stdout] 679 | |         exposed = union();
[INFO] [stdout] ...   |
[INFO] [stdout] 704 | |         new_exposed[1] -> [1]notifs;
[INFO] [stdout] 705 | |     };
[INFO] [stdout]     | |_____^ method not found in `Port<SEND, VecHandoff<_>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hydroflow_syntax` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 21 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_join_fused") due to 22 previous errors; 2 warnings emitted
[INFO] [stdout] error: aborting due to 57 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hydroflow` (test "surface_codegen") due to 58 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "e16967b739bbe5fde55c329aa9588d4fece954baf60a279b6ebbb8bfd0154a8e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e16967b739bbe5fde55c329aa9588d4fece954baf60a279b6ebbb8bfd0154a8e", kill_on_drop: false }`
[INFO] [stdout] e16967b739bbe5fde55c329aa9588d4fece954baf60a279b6ebbb8bfd0154a8e
